﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace KPWeb.Data
{
    public class cFirma
    {
        public static int UpdateFirmaKonfiguracja( int firmaID,string czyPytaniaOdpowiedziAktywny, int lK,int lJ, int lP, int osobaID)

                 //1 błąd zapisu
            // stringi puste i wartości 0 nie modyfikujemy
        {
            using (DBContainer db = new DBContainer())
            {
              
                try
                {
                    var wiz = db.KP_FirmyKonfiguracjaSystemu.Where(a => a.FirmaID == firmaID).Single();
                    if (czyPytaniaOdpowiedziAktywny !="") wiz.czyModulPytaniaOdpowiedziAktywny = czyPytaniaOdpowiedziAktywny;
                    if (lK != 0) wiz.liczbaKomunikatowKoordynator = lK;
                    if (lJ != 0) wiz.liczbaKomunikatowJednostka = lJ;
                    if (lP != 0) wiz.liczbaPytanOdpowiedzi = lP;
                    wiz.OsobaID = osobaID;
                    db.SaveChanges();
   
                    return 0;
                }
                catch (Exception e)
                {
                    return -1;
                }


            }
        }
  
        public static bool CzyPytaniaOdpowiedziAktywny(int firmaID)
        {

            using (DBContainer db = new DBContainer())
            {

                return (db.KP_FirmyKonfiguracjaSystemu.Where(a => a.FirmaID == firmaID &&
                        a.czyModulPytaniaOdpowiedziAktywny=="t").Count() == 1);
            }
        }
        public static int LiczbaKomunikatowKoordynator(int firmaID)
        {

            using (DBContainer db = new DBContainer())
            {

                return (db.KP_FirmyKonfiguracjaSystemu.Where(a => a.FirmaID == firmaID ).Single().liczbaKomunikatowKoordynator);
            }
        }
        public static int LiczbaKomunikatowJednostka(int firmaID)
        {

            using (DBContainer db = new DBContainer())
            {

                return (db.KP_FirmyKonfiguracjaSystemu.Where(a => a.FirmaID == firmaID).Single().liczbaKomunikatowJednostka);
            }
        }
        public static int LiczbaPytanOdpowiedzi(int firmaID)
        {

            using (DBContainer db = new DBContainer())
            {

                return (db.KP_FirmyKonfiguracjaSystemu.Where(a => a.FirmaID == firmaID).Single().liczbaPytanOdpowiedzi);
            }
        }
        public static vKP_Osoby DaneOsoby(int osobaID)
        {

            using (DBContainer db = new DBContainer())
            {

                return (db.vKP_Osoby.Where(a => a.OsobaID == osobaID).Single());
            }
        }
    }
}